iT邦幫忙

2024 iThome 鐵人賽

DAY 4
0

一些容器重要觀念學習

  • Day03學了docker run基本指令,今天學習將指令延伸使用
  • docker run指令的延伸、體驗Container隔離特性

1. docker run 的小功能

如果Local端沒有Image,直接使用docker run的話,會自動執行docker pull後,再進行docker create + docker start

Local端 目前無任何Images
NoImages

執行指令

docker run nginx

Images頁籤
RunNoImages

Containers頁籤
PsAfterRun

補充說明:眼尖的應該有注意到,我沒有指定版本號(Tag),docker pull預設會自動抓lastest唷!

2. Container特性

使用Nginx當作示範練習

docker run 的常見使用參數

  • --name: 指定container name
  • -i: interactive (互動模式)
  • -t: tty (配置一個終端機)
  • -d: detach (在背景執行)
  • -p: port (Port對應)
  • -v: volume (掛載資料夾)

在背景啟動一台Nginx服務

docker run --name ng -d nginx
docker ps -a
// [GET]預設首頁
curl http://localhost:8080/

會發現無法成功打到Nginx,原因就是Container具有隔離性,所以外界沒辦法與之溝通。
runNG

解決方法就是加入指令-p設定port forwarding

docker run --name ng -d -p 8080:80 nginx
docker ps -a
// [GET]預設首頁
curl http://localhost:8080/

這次就成功將Container:80綁定至Host:8080,所以成功[GET]。
runNGwithIP

使用瀏覽器的畫面
runNGwithIPEdge

今天到這邊,下次介紹常用的Volumn功能。


上一篇
Day03-Docker基本指令
下一篇
Day05-容器間的共同小秘境(Volume/Bind Mount)
系列文
從零開始的DevOps猴!30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言